<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

</body>
<script>
    // 1- 对象如何设置属性与方法
    // {
    //     // 初始化设置属性与方法
    //     const obj = {
    //         a:1,
    //         b:2,
    //         c:3,
    //         fn(){
    //
    //         }
    //     }
    //     // 修改属性a
    //     obj.a = 100;
    //     // 添加属性m
    //     obj.m = 90;
    //     // 调用方法fn
    //     obj.fn();
    // }

    // 2- 对象如何获取属性与调用方法
    // * .属性名：编码简单，但有时不能用
    // * ["属性名"]：编码麻烦，但通用。
    // {
    //     // 设置1
    //     let c = 4;
    //     const obj = {
    //         a:1,
    //         b:2,
    //         c,// 将变量c的名字作为属性名，变量c的值作为属性值
    //         ["d"]:3,//  属性名字为d,值为3
    //         'f':5,
    //         [c]:100,// 将变量c的值作为属性名，值为100
    //         "$%^&*()":200
    //     };
    //     // 设置2
    //     obj.userName = "lisi";
    //     obj["age"] = 12;
    //     // 获取：
    //     console.log(obj.a,obj.b,obj.c,obj.d,obj.f,obj["4"],obj.userName,obj.age,obj["$%^&*()"])
    //
    // }

    // 对象的遍历
    // {
    //     let obj = {
    //         a:1,
    //         b:2,
    //         c:3,
    //         d:4
    //     };
    //     // 1
    //     for(let key in obj){
    //         console.log(key,obj[key]);
    //     }
    //     // 2
    //     Object.keys(obj).forEach(key=>{
    //         console.log(key,obj[key])
    //     })
    // }

    // 对象如何删除属性
    // {
    //     let obj = {
    //         a:1,
    //         b:2,
    //         c:3,
    //         info:{
    //             userName:"zhangsan",
    //             age:12
    //         }
    //     };
    //     delete obj.a;
    //     delete obj.info.age;
    //     console.log(obj);
    // }


    // 面试题
    // var a = {};
    // var b = {b:1};
    // var c = {c:2};
    // a[b] = 4;
    // a[c] = 5;
    // console.log(a[b]);// 5

    var a = {};
    var b = 1;
    var c = 2;
    a[b] = 4;// a["1"] = 4
    a[c] = 5;// a["2"] = 5;
    console.log(a[b]);// 4

    // const b = {b:1};
    // const c = {c:2};
    // console.log(b.toString());// [object Object]
    // console.log(c.toString());// [object Object]

</script>
</html>